// 当收到用户的请求之后
// 在public下去读这个文件
//  读到：返回
//  读不到：返回404

const http = require('http')
const path = require('path')
const fs = require('fs')
const server = http.createServer((req, res) => {
  const { url } = req
  // 获取后缀名
  const ext = path.extname(url)
  console.log(url, ext)
  // 1. 拼接地址
  const filePath = path.join(__dirname, 'public', url)
  // 2. 读资源文件
  try{
    const content = fs.readFileSync(filePath)
    console.log(content)

    // 根据不同的后缀名，补充不同的content-type
    // .html ---> text/html;charset=utf8
    // .jpg ---> image/jpg
    if (ext === '.html') {
      res.setHeader('content-type', 'text/html;charset=utf8')
    } else if (ext === '.jpg') {
      res.setHeader('content-type', 'image/jpg')
    } else if (ext === '.css') {
      res.setHeader('content-type', 'text/css;charset=utf8')
    } else if (ext === '.js') {
      res.setHeader('content-type', 'application/javascript')
    } 

    res.end(content)
  } catch (err) {
    console.log(err)
    res.statusCode = 404
    res.end('404')
  }
})

server.listen(8001, () => {
  console.log('你的服务器在8001就绪');
})